// beforeEach((to, from, next) => {
//   // to 去哪里
//   // from 哪里来
//   // next() ==> 函数
//   // next() ==> 放行
//   // 不用 或者 next(false) ==> 不放行
//   // next(路径)
// })

// 页面的访问权限
// token + beforeEach
// 判断 token
// token 存在 ==> 1. 用户去的是登录，去首页
//            ==> 2. 用户去的不是登录， 放行

// token 不存在 ==> 1. 用户去的是不是在白名单，放行
//             ==> 2. 反之， 登录页
import router from '@/router'
import store from '@/store'
import nprogress from 'nprogress'
import 'nprogress/nprogress.css'
// import { Message } from 'element-ui'
const whiteList = ['/shuzhongtian/login', '/404', '/shuzhongtian/mapH5']
// nprogress 关闭 转圈圈
nprogress.configure({ showSpinner: false })
router.beforeEach((to, from, next) => {
  nprogress.start()
  // console.log(to)
  store.dispatch('user/updataRouterName', to.name)
  const token = store.getters.userInfo.token
  // console.log(token)
  // console.log(token)
  if (token) {
    // 判断是否获取过用户信息
    // 获取过 不用重复获取
    // 没有获取过 再重复获取
    // if (!store.getters.userInfo.token) {
    //   store.dispatch('user/getUserAction')
    // }
    if (to.path === '/shuzhongtian/login') {
      next('/shuzhongtian') // 发起的页面重定向 无法进入 全局后置守卫
      // Vue-router4 优化
      nprogress.done()
    } else {
      next()
    }
  } else {
    if (whiteList.includes(to.path)) {
      next()
    } else {
      next('/shuzhongtian/login')
      nprogress.done()
    }
  }
})

// 页面进度条效果
// 路由的全局前置守卫

// 路由的全局后置守卫
router.afterEach((to, from) => {
  // console.log('to', to) //
  // console.log('from', from)//
  // console.log('结束')
  nprogress.done()
})
